The branching is unique in this case because each $2$-torsion point must have an odd order zero above it. However, we choose to arrange it so that one of the triple zeros lies over exactly one of the points in $\{(0,0), (1,0)\}$ and the other over one of the points in $\{(0,1), (1,1)\}$.
We recall that in $\mathcal{H}(3,3,1,1)$, $d_{opt} = 8$ and by the arrangement above, there is a $2$-torsion point in the boundary of each horizontal cylinder that has exactly one simple zero above it.
import re
#This loads all of the 1-cylinder diagrams in H(2,1,1) formatted as python lists
H3_1_cyl_diags = [[[[0, 2, 5, 3, 1, 4], [0, 2, 3, 1, 5, 4]]],
[[[0, 5, 2, 3, 4, 1], [0, 2, 4, 5, 3, 1]]]]
#This loads all of the functions for processing cylinder diagrams
%run ./ST5_fcns/cyl_diag_fcns.ipynb
H3_1_vertex_data = strat_odd_sc(H3_1_cyl_diags)
Among partitions of $16$ into six numbers the minimum of the maximum numbers among all partitions is $\lceil 2d_{opt}/6\rceil = 3$, which is 3 in this case.
Solving $16 - 2(3) - 2t_0 \geq 0$ implies that the largest value of $t_0$ is $5$.
Since the situation for $s_0$ is symmetric the same bounds apply.
In summary:
$$3 \leq s_0, t_0 \leq 5$$
#This loads all of the standard partition functions needed for nearly every case
#It also loads the partition evaluate function
%run ./ST5_fcns/partition_functions.ipynb
if True:
create_sc_partition_file((), part_length = 6, t0_range = range(3,6), d_opt = 8,
filename_root = 'ST5_data//H_3_3_1_1//2_branch_point//partitions//H3_1_part')
#Load the partitions
if True:
with open('ST5_data//H_3_3_1_1//2_branch_point//partitions//H3_1_part', 'r') as file:
H3_1_part = eval_part(file.read())
#This loads all of the align_list functions needed for nearly every case
#This includes the align_list evaluate function
%run ./ST5_fcns/align_list_fcns.ipynb
if True:
for t in range(3,6):
align_list_write_file(H3_1_part, H3_1_vertex_data,
'ST5_data//H_3_3_1_1//2_branch_point//align_list//H3_1_align_list',
t0 = t)
#This loads all of the visible_align_list functions needed for nearly every case
%run ./ST5_fcns/align_list_visible_fcns.ipynb
if True:
generate_all_align_list_visible_files(range(3,6), range(3,6), 8,
'ST5_data//H_3_3_1_1//2_branch_point//',
'align_list//H3_1_align_list_',
'align_list_visible//H3_1_align_list_')
#At this point, none of the files above need to be loaded for this to run.
#Once the files above are generated, the file sizes are small enough that these can be loaded on the fly.
#This loads all of the visible_align_list functions needed for nearly every case
%run ./ST5_fcns/combine_align_list_visible_fcns.ipynb
if True:
combine_align_list_visible_write_file(s_range = range(3,6),
s_filename_root = 'align_list_visible//H3_1_align_list_',
t_range = range(3,6),
t_filename_root = 'align_list_visible//H3_1_align_list_',
d_opt = 8,
root_dir = 'ST5_data//H_3_3_1_1//2_branch_point//')